快排最重要的就是 partition 函数,i 记录第一个不小于 pivot 的位置:
- 取数组中最后一个数字为 pivot,同时用 i 记录第一个位置;
- 遍历数组,比较每个数和 pivot;
- 数组内的值小于 pivot 时,进入循环;
- 保证 i 是第一个不小于 pivot 的位置;
- i == j, i ++
- i != j, 交换数组中 i 和 j,且 i++
1 | import java.util.Arrays; |
快排最重要的就是 partition 函数,i 记录第一个不小于 pivot 的位置:
1 | import java.util.Arrays; |